package com.trhui.mallbook.domain.common;


import com.trhui.mallbook.common.utils.StringUtil;

import java.io.Serializable;

/**
 * 接口返回包
 * @author linqy
 */
public class ApiResponse implements Serializable {

    /**
     *
     */
    private static final long serialVersionUID = -2704506685152525743L;


    /**
     * 结果字符串，json格式
     */
    private String result;

    /**
     * 签名，由code+msg+date+result根据私钥生成, 如果有参数为null，签名串中应当做空字符串("")来处理
     */
    private String sign;

    /**
     * 结果代码
     */
    private String code;

    /**
     * 结果信息
     */
    private String msg;

    /**
     * 时间戳
     */
    private String date;

    /**
     * 接口版本号，不同版本号触发不同接口业务
     */
    private String version;


    /**
     * @return the version
     */
    public String getVersion() {
        return StringUtil.convertNull(version);
    }

    /**
     * @param version
     *            the version to set
     */
    public void setVersion(String version) {
        this.version = version;
    }

    /**
     * getter
     * @return 返回 result
     */
    public String getResult() {
        return StringUtil.convertNull(result);
    }

    /**
     * setter
     * @param result 进行赋值
     */
    public void setResult(String result) {
        this.result = result;
    }

    /**
     * @return the sign
     */
    public String getSign() {
        return StringUtil.convertNull(sign);
    }

    /**
     * @param sign
     *            the sign to set
     */
    public void setSign(String sign) {
        this.sign = sign;
    }

    /**
     * @return the code
     */
    public String getCode() {
        return StringUtil.convertNull(code);
    }

    /**
     * @param code
     *            the code to set
     */
    public void setCode(String code) {
        this.code = code;
    }

    /**
     * @return the msg
     */
    public String getMsg() {
        return StringUtil.convertNull(msg);
    }

    /**
     * @param msg
     *            the msg to set
     */
    public void setMsg(String msg) {
        this.msg = msg;
    }

    /**
     * @return the date
     */
    public String getDate() {
        return StringUtil.convertNull(date);
    }

    /**
     * @param date
     *            the date to set
     */
    public void setDate(String date) {
        this.date = date;
    }


    @Override
    public String toString() {
        return StringUtil.convertNull(code) + StringUtil.convertNull(msg) + StringUtil.convertNull(date) + StringUtil.convertNull(result);
    }
}
